<!DOCTYPE html>
<html>
<head>
    <!-- 页面meta -->
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>传智健康</title>
    <meta name="description" content="传智健康">
    <meta name="keywords" content="传智健康">
    <meta content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no" name="viewport">
    <!-- 引入样式 -->
    <link rel="stylesheet" href="../plugins/elementui/index.css">
    <link rel="stylesheet" href="../css/style.css">
    <script src="../js/echarts.js"></script>

</head>
<body class="hold-transition">
<div id="app">
    <div class="content-header">
        <h1>统计分析<small>会员数量</small></h1>
        <el-breadcrumb separator-class="el-icon-arrow-right" class="breadcrumb">
            <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
            <el-breadcrumb-item>统计分析</el-breadcrumb-item>
            <el-breadcrumb-item>会员数量</el-breadcrumb-item>
        </el-breadcrumb>
        <!--  日期控件  -->
        <div class="block">
            <span class="demonstration">起始月份</span>
            <el-date-picker
                    v-model="selectDate[0]"
                    type="month"
                    @change="initChart"
                    placeholder="请选择月份">
            </el-date-picker>
            <span class="demonstration">结束月份</span>
            <el-date-picker
                    v-model="selectDate[1]"
                    type="month"
                    @change="initChart"
                    placeholder="请选择月份">
            </el-date-picker>
        </div>
    </div>
    <div class="app-container">
        <div class="box">
            <!-- 为 ECharts 准备一个具备大小（宽高）的 DOM -->
            <div id="chart1" style="height:600px;"></div>
        </div>
    </div>
</div>
</body>
<!-- 引入组件库 -->
<script src="../js/vue.js"></script>
<script src="../js/axios-0.18.0.js"></script>
<script src="../plugins/elementui/index.js"></script>
<script type="text/javascript">
    // 选择日期范围
    var vue = new Vue({
        el: '#app',
        data: {
            d: 0,
            selectDate: [],
        },
        created() {
            //默认查询过去一年的记录，第一个参数为查询起始日期，第二个参数为查询结束日期
            this.selectDate = [this.getDay(-366), this.getDay(0)]
            this.initChart()
        },
        methods: {
            //按日期展示折线图
            initChart() {
                axios.post("/report/getMemberReport.do", this.selectDate).then((res) => {
                    if (res.data.flag) {
                        myChart1.setOption(
                            {
                                title: {
                                    text: '会员数量'
                                },
                                tooltip: {},
                                legend: {
                                    data: ['会员数量']
                                },
                                xAxis: {
                                    data: res.data.data.months // 字符串的[] => List<String> 月份
                                },
                                yAxis: {
                                    type: 'value'
                                },
                                series: [{
                                    name: '会员数量',
                                    type: 'line',
                                    data: res.data.data.memberCount // 数字数组 List<Integer>
                                }]
                            });
                    }else {
                        this.$message.error(res.data.message);
                        this.selectDate[0]=this.selectDate[1]
                    }
                });
            },
            //日期控件相关方法
            getDay(day) {
                var today = new Date();
                var targetday_milliseconds = today.getTime() + 1000 * 60 * 60 * 24 * day;
                today.setTime(targetday_milliseconds);
                var tYear = today.getFullYear();
                var tMonth = today.getMonth();
                var tDate = today.getDate();
                tMonth = this.doHandleMonth(tMonth + 1);
                tDate = this.doHandleMonth(tDate);
                return tYear + "-" + tMonth + "-" + tDate;
            },
            doHandleMonth(month) {
                var m = month;
                if (month.toString().length == 1) {
                    m = "0" + month;
                }
                return m;
            },
        }
    })

    // 基于准备好的dom，初始化echarts实例
    var myChart1 = echarts.init(document.getElementById('chart1'));

    // 使用刚指定的配置项和数据显示图表。
    //myChart.setOption(option);

</script>

</html>
